1. Field of the Invention
The present invention relates to a wireless communication system, and more particularly, to a method of processing data at a specific protocol layer in a wireless communication system.
2. Discussion of the Related Art
Generally, WCDMA (wideband code division multiple access) based 3GPP (3rd generation partnership project) wireless communication systems are ongoing to be widely spread over the world. WCDMA system has started from Release 99 (R99) and had introduced HSPDA (high speed downlink packet access) and HSUPA (high speed uplink packet access) as wireless access technologies having high competitiveness in mid-term future. The WCDMA system also introduces E-UMTS as a wireless access technology having high competitiveness in long-term future. The E-IMTS is the system that has evolved from WCDMA UMTS and its standardization is ongoing by 3GPP. Moreover, the E-UMTS is called LTE (long term evolution) system. For the details of technical specifications of UMTS and E-UMTS, it is able to refer to Release 7 and Release 8 of ‘3rd Generation Partnership Project: Technical Specification Group Radio Access Network’, respectively.
The HSPDA and HSPUA technologies are specially introduced to efficiently support a packet switched service. HSPDA and HSUPA can be collectively called HSPA. The discussion on supporting a voice service over HSPA efficiently as well as a packet switched service is ongoing as ‘CS voice over HSPA WI (work item)’ in 3GPP Release 8. In this case, ‘CS voice over HSPA’ generically deals with all matter related to providing CS (circuit switch) based voice data over HSPA.
Circuit switched (CS) system is the system for exchanging data by establishing a communication circuit between an originator and a recipient. In case that a dedicated communication path available for two stations attempting communication in-between is provided, the dedicated communication path is constructed with a link that consecutively connects nodes to each other. In the circuit switched system, a physical link is connected via a single channel.
Therefore, the circuit switched system is suitable for data exchange including a relatively continuous flow such as a telephone, a sensor and a telemetry input and is easily usable. As data is transferred via an established communication circuit in the circuit switched system, the circuit switched system is suitable for a case of a large information size or a long message transmission such as a file transmission and the like.
In case of using a CS service, a user equipment supporting R99 (R99 user equipment) transceives voice data on a DCH (dedicated channel). On the contrary, a user equipment supporting ‘CS voice over HSPA’ (e.g., 3GPP LTE (Release8) user equipment) transceives voice data over HSPA.
FIG. 1 is a diagram for an example of transceiving CS (circuit-switched) voice data over a DCH (dedicated channel) or HSPA (high speed packet access) (with reference to application and MAC layers). FIG. 1 shows a difference in transceiving voice data between ‘CS voice over DCH’ and ‘CS voice over HSPA’.
Referring to FIG. 1, R99 user equipment transmits voice data using a DCH. The DCH is always occupied from when an RRC connection is established until the RRC connection is released. The DCH is operative in a TTI (transmission time interval) of 20 ms and voice codec transfers a single voice packet to an RLC entity every 20 ms. In this case, the voice codec can include AMR (adaptive multi-rate speech codec). The AMR speech codec has eight variable output rates ranging between 4.75 kbps and 12.2 kbps and is able to adjust its data rate per 20 ms. The voice packet transferred to the RLC entity is transparently carried on the DCH via a MAC layer (entity).
In case of ‘CS voice over HSPA’, voice data is transceived using a HS-DSCH (high speed downlink shared channel) and a E-DCH (enhanced dedicated channel). In a receiving side, HS-DSCH is used as a shared channel. A specific user equipment uses a specific path in a manner of occupying the specific path only if necessary instead of occupying the specific path continuously. Therefore, circuit use efficiency can be maximized. A TTI of HS-DSCH is 2 ms and AMR speech codec transfers a single voice packet to an RLC entity per 20 ms. Thereafter, the voice packet is carried on HS-DSCH via a MAC layer. In this case, the voice packet can be retransmitted by HARQ (hybrid automatic repeat request) scheme. ‘CS voice over HSPA’ shown in FIG. 1 illustrates the example that a voice packet is retransmitted.
Hence, even if a transmitting side transmits an AMR frame per 20 ms in sequence, a data transfer sequence can be inverted in a receiving side due to HARQ retransmission. In case that a radio condition is poor, a voice packet is lost on a radio link so as not to be delivered to a receiving side. So, in case that ‘CS voice over HSPA’ is configured, time information and sequence information of a transmitting side are necessary for the receiving side to correct inversion of data transfer sequence, data loss and the like. In this case, the time information exists in a PDCP (packet data convergence protocol) PDU (Protocol Data Unit) header and the sequence information exists in an RLC (radio link control) PDU header.
FIG. 2 is a diagram for an example of transceiving CS voice data over HSPA if ‘CS voice over HSPA’ is configured (with reference to RLC and PDCP layers).
Referring to FIG. 2, an AMR encoder of a transmitting side generates AMR or AMR-WB (adaptive multi rate-wideband) packet every 20 ms. Subsequently, a PDCP layer generates a PDCP PDU (=RLC SDU) by adding a header including time information to the packet. In this case, the time information may include ‘CS counter’. An RLC layer then generates an RLC PDU by adding a header including sequence information to the RLC SDU. In this case, the sequence information may include ‘sequence number (SN)’. The RLC PDU is transferred to a receiving side on a HS-DSCH via a MAC layer. In the receiving side, the process of the transmitting side is performed in reverse. Finally, an AMR decoder of the receiving side decodes the time information and the sequence information extracted from AMR or AMR-WB (adaptive multi rate-wideband) frame by precisely obtaining a transmission time of a voice packet transmitted by the transmitting side.
‘CS counter’ uses five LSBs (least significant bits) of a CFN (connection frame number). The CFN is the time information managed by a base station and a user equipment between which a RRC connection is established. The CFN is set unique to each user equipment. The CFN becomes a reference time for data generation or data processing. The CFN is incremented according to time increment. For instance, if the CFN is set to 0 at 0 ms, it becomes 2 at 20 ms or 4 at 40 ms. Hence the CFN is incremented each predetermined duration irrespective of a presence or non-presence of data transfer at a prescribed timing point.
‘CS counter’ means a timing point at which voice data is transferred to PDCP entity. ‘CS counter’ is the time information used in defining the operations that transmitting and receiving sides should perform in a predetermined time. ‘CS counter’ is also the information for discriminating a lost packet. An AMR or AMR-WB frame is generated every 20 ms and ‘CS counter’ is always incremented by 2. For instance, if a received ‘CS counter’ is greater than a previous ‘CS counter’ by 4, it means that a single AMR packet is lost.
An RLC entity adds sequence information into each AMR or AMR-WB frame. A receiving side corrects the order of the inversed voice packets using the sequence information. The sequence information is used to obtain a talk spurt start point when voice data is shifted to a talk spurt interval from a silent interval. In particular, when voice data is shifted to a talk spurt interval from a silent interval, time information is insufficient for a user equipment to obtain start information of the talk spurt interval. This is because time information is increased every time duration expires irrespective of a presence or non-presence of voice data transfer. Therefore, using the sequence information increasing in a talk spurt interval only and the time information increasing irrespective of a presence or non-presence of voice data transfer, it is able to obtain start information of the talk spurt interval.
Consequently, if ‘CS voice over HSPA’ is configured, a voice decoder of a receiving side decodes a voice packet using time information and sequence information of transmitting side data. A decoding process using time and sequence information will be explained in detail later. In this case, the time information can be ‘CS counter’ in a PDCP entity and the sequence information can be a sequence number in an RLC entity.
However, in the related art, if an RLC entity receives an RLC PDU, the RLC entity extracts RLC SDUs using length indicator (LI) information within the received RLC PDU irrespective of a presence or non-presence of configuration of ‘CS voice over HSPA’ and then delivers the extracted RLC SDUs to an upper layer. Since a sequence number (SN) is included in a header of the RLC PDU, a receiving side RLC entity is able to know a transmission order of the RLC PDU using the sequence number. A sequence number is one-to-one mapped to an RLC PDU. And, a transmitting side RLC entity enables a sequence number to be included in a header by incrementing the sequence number by 1 per RLC PDU. Therefore, if several RLC SDUs are contained in a single RLC PDU, the several RLC SDUs differing from each other have the same RLC sequence number.
Meanwhile, PDCP AMR data received via a RLC PDU or a RTP (real-time transport protocol) payload is stored and normalized by a de-jitter buffer and is then transferred to an AMR voice decoder. In this case, ‘jitter’ means a phenomenon that data blocks generated continuously in a predetermined time interval fails to arrive at a receiving side in an originally generated time interval. In order to solve the problem caused by ‘jitter’, the receiving side reorders the received data blocks and then processes the reordered data blocks in a predetermined time interval. The de-jitter process is performed by a de-jitter buffer using time information and sequence information of an AMR voice encoder. In particular, a receiving side reorders received PDUs using time information and sequence information and is then able to process an SDU contained in the corresponding PDU.
Yet, in case that several RLC SDUs are contained in a single RLC PDU, the different RLC SDUs have the same RLC sequence information. If so, a de-jitter buffer is not aware of a transmission order of AMR voice packets. Hence, the de-jitter buffer is unable to process the corresponding RLC PDU. Due to this reason, once ‘CS voice over HSPA’ is configured, a transmitting side RLC entity transfers one complete RLC SDU only via one RLC PDU. Furthermore, an RLC PDU may be distorted through a system error or an wireless interface. For instance, in case of a presence of an error caused by the wireless interface, even if an error is controlled by CRC check, a residual error can exist to an extent of 10−6. Therefore, although ‘CS voice over HSPA’ is configured, if at least two or more RLC SDUs are contained in one RLC PDU due to some reason, the corresponding RLC PDU is not processed by an upper layer, which is an error.